#include <iostream>
#include <queue>
#include <map>
#include <unordered_map>
#include <vector>
#include <algorithm>
#include <cmath>
#include <string>
#include <cstring>
#include <set>
#include <unordered_set>
#define IOS ios::sync_with_stdio(false), cin.tie(0), cout.tie(0)
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int> pii;
const int N=2e5+10;
int h[N];
int main()
{
	int t;
	cin>>t;
	while(t--)
	{
		int n;
		double b,d;
		cin>>n>>d>>b;
		for(int i=0;i<n;i++) cin>>h[i];
		sort(h,h+n);
		double sum=0;
		for(int i=0;i<n-1;i++)
		{
			if(h[i]+b<=h[i+1]) sum=sum+b*(double)d/2;
			else
			{
				double dh=h[i]+b-h[i+1];
				double bi=dh/b;
				double dd=d*bi;
//				cout<<dh<<' '<<bi<<' '<<dd<<endl;
				sum=sum+b*(double)d/2-dd*dh/2;
			} 
		}
		sum+=b*(double)d/2;
		printf("%.8lf\n",sum);
	}


	return 0;
}

